package org.soc.timesheet.server.domain.service;
import java.util.List;
import org.soc.timesheet.domain.Projects;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.roo.addon.layers.service.RooService;

@RooService(domainTypes = { org.soc.timesheet.domain.Projects.class })
public interface ProjectsService {
	
	public Page<Projects> findAll(Pageable pageable);
	
	public Page<Projects> findByFilters(Specification<Projects> filter,Pageable pageable);

	public abstract long countAllProjectses();


	public abstract void deleteProjects(Projects projects);


	public abstract Projects findProjects(Integer id);


	public abstract List<Projects> findAllProjectses();


	public abstract List<Projects> findProjectsEntries(int firstResult, int maxResults);


	public abstract void saveProjects(Projects projects);


	public abstract Projects updateProjects(Projects projects);

}
